package com.smart.parking.service;

import com.baomidou.mybatisplus.extension.service.IService;
import com.smart.parking.entity.SpaceEntity;
import com.smart.parking.utils.PageUtils;
import com.smart.parking.vo.SpaceVO;

import java.util.List;
import java.util.Map;

/**
 * 车位信息表
 *
 * @author ciyun
 */
public interface SpaceService extends IService<SpaceEntity> {

    PageUtils queryPage(Map<String, Object> params);

    /**
     * 车位停车
     */
    void lotParking(Long spaceId);

    /**
     * 释放车位
     */
    void releaseParking(Long spaceId);

    /**
     * 车位报修
     */
    boolean repairParking(Long spaceId);

    /**
     * 车位恢复
     */
    void completeParking(Long spaceId);

    /**
     * 新增车位
     */
    void addSpace(SpaceVO spaceVO);

    /**
     * 批量新增
     */
    void addSpaceList(List<SpaceVO> spaceVOList);

    /**
     * 更新车位
     */
    void updateSpace(SpaceEntity spaceEntity);

    /**
     * 删除车位
     */
    void deleteSpace(Long spaceId);

    /**
     * 批量删除
     */
    void deleteSpaces(Long[] spaceIds);

    /**
     * 修改维修状态
     */
    void updateRepair(Long repairID,Integer state);

}

